The Essence of the ITERATOR Pattern
نویسندگان
چکیده
The ITERATOR pattern gives a clean interface for element-by-element access to a collection. Imperative iterations using the pattern have two simultaneous aspects: mapping and accumulating. Various existing functional iterations model one or other of these, but not both simultaneously. We argue that McBride and Paterson’s idioms, and in particular the corresponding traverse operator, do exactly this, and therefore capture the essence of the ITERATOR pattern. We present some axioms for traversal, and illustrate with a simple example, the repmin problem.
منابع مشابه
بررسی تاثیر مراحل فنولوژیک بر روی درصد و ترکیبات شیمیایی اسانس گیاه مرتعی Satureja hortensis L.
Background : Summer savory is an annual grass plant, with a branched stem with the length of 10 to 30 cm that is distinguishable from the similar species due to having grayish green appearance and its leaves are narrow and long. In recent years, the anti-viral, anti-inflammatory, antibacterial, antifungal, antispasmodic, stomach invigorator and digestion facilitator characteristics of this spec...
متن کاملACOEL on CORAL A COmponent Requirement and Abstraction Language
CORAL is a language for specifying properties of ACOEL, a component-oriented extensional language. The design of CORAL is based on input/output automata and type state. The properties of ACOEL components that need to be verified are specified using CORAL. A verification engine will then crawl through CORAL and verify whether ACOEL can be safely executed or not. In this paper we focus on CORAL, ...
متن کاملDistributed result set iterator: a design pattern for efficient retrieval of large result sets from remote data sources
Distributed computing inherently adds complexity to computer software. Latency, distributed memory management, heterogeneous networks, fault tolerance and security are some of the issues contributing to this added complexity [5,9,12]. Specific key challenges concern server reliability, availability, and robustness; bandwidth allocation and sharing; and scalability of web and data servers [10].
متن کاملA UML-Based Metamodeling Language to Specify Design Patterns
A design pattern describes a generic solution for problems that occur repeatedly. Current descriptions of design patterns describe solutions with graphical notation and complementing text. To encourage the use of design patterns, the development of pattern supporting tools is imperative. This requires design patterns to be specified precisely. There has been considerable work done on pattern sp...
متن کاملThe Role-Based Metamodeling Language for Specifying Design Patterns
This chapter describes a UML-based pattern specification language called the role-based metamodeling language (RBML), which defines the solution domain of design patterns in terms of roles at the metamodel level. The goal of the RBML is to support the development of precise pattern specifications that can be used for the development of pattern tools. The author describes the approaches and bene...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید
ثبت ناماگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید
ورودعنوان ژورنال:
- J. Funct. Program.
دوره 19 شماره
صفحات -
تاریخ انتشار 2006